home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / pxewin.zip / PXI.CPP < prev    next >
Text File  |  1992-02-06  |  2KB  |  85 lines

  1. // PXEWIN - (C) Copyright 1992 by Beam Engineering, INC.
  2.  
  3. // PXI.CPP //
  4.  
  5. // Contents ----------------------------------------------------------------
  6. //
  7. //    This modules contains the members for the PXI class for intializing
  8. //    the engine.
  9. //
  10. // End ---------------------------------------------------------------------
  11.  
  12. // External Reference Name for this Header ---------------------------------
  13.  
  14. #ifndef PXI_CPP
  15.     #define PXI_CPP
  16.  
  17. // End ---------------------------------------------------------------------
  18.  
  19. // Interface Dependencies --------------------------------------------------
  20.  
  21. #ifndef PXI_HPP
  22.     #include "pxi.hpp"
  23. #endif // PXI_HPP //
  24.  
  25. // End ---------------------------------------------------------------------
  26.  
  27. // Constructor PXI //
  28.  
  29. PXI::PXI(char *client,int ShareMode)
  30. {
  31.     clt = client;
  32.     smode = ShareMode;
  33.  
  34.     // Open a new engine data buffer.
  35.  
  36.     EngDataPtr = new EngData;
  37.     if((EngDataPtr->Errors.pxerr = PXWinInit(client,ShareMode))
  38.         != PXSUCCESS)
  39.     {
  40.         PXError(ENG_ERROR);
  41.         return;
  42.     }
  43.     close_status = OPENED;
  44. }
  45.  
  46. // Summary -----------------------------------------------------------------
  47. //
  48. //    Initializes engine for Windows.
  49. //
  50. // Parameters
  51. //
  52. //    client.  Specifies Windows client mode.
  53. //
  54. //    ShareMode.  Specifies Windows shar options.
  55. //
  56. // Functional Description
  57. //
  58. //    Initialize client mode and share mode for windows operation.  Set the
  59. //    close status to indicate that the engine has been initialize already.
  60. //
  61. // End ---------------------------------------------------------------------
  62.  
  63. // Destructor ~PXI //
  64.  
  65. inline PXI::~PXI(void)
  66. {
  67.     // If successful initialization, exit.
  68.  
  69.     if(close_status == OPENED)
  70.     {
  71.         if((EngDataPtr->Errors.pxerr = PXExit()) != PXSUCCESS)
  72.             PXError(ENG_ERROR);
  73.     }
  74.     delete EngDataPtr;
  75.     EngDataPtr = NULL;
  76. }
  77.  
  78. // Description -------------------------------------------------------------
  79. //
  80. //    If the engine is opened, close it.
  81. //
  82. // End ---------------------------------------------------------------------
  83.  
  84. #endif // PXI_CPP //
  85.